{ INFORMATICS.MCCME.RU
  Problem statement: http://informatics.mccme.ru/moodle/mod/statements/view3.php?chapterid=326
  Verdict: Accepted
}
uses SysUtils, Math;
 
type
	point=record
		x,y:longint;
		s:int64;
	end;
 
var
	i,j,k,n,kk1,kk2:longint;
	a:array[0..110] of point;
	cx,cy,cz,ans:double;
 
function dist(x,y:longint):double;
begin
result:=sqrt((a[x].x-a[y].x)*(a[x].x-a[y].x)+(a[x].y-a[y].y)*(a[x].y-a[y].y));
end;
 
begin
reset(input,'input.txt');
rewrite(output,'output.txt');
read(n);
for i:=1 to n do
	read(a[i].x,a[i].y);
kk2:=n-2;
kk1:=n-1;
ans:=0;
for i:=1 to kk2 do
	for j:=i+1 to kk1 do
		for k:=j+1 to n do begin
			cx:=dist(i,j);
			cy:=dist(i,k);
			cz:=dist(k,j);
			ans:=max(ans,cx+cy+cz);
		end;
write(ans:0:15);
end.